diff options
Diffstat (limited to 'src/app/groups/[groupId]/expenses/[expenseId]/edit/page.tsx')
| -rw-r--r-- | src/app/groups/[groupId]/expenses/[expenseId]/edit/page.tsx | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/src/app/groups/[groupId]/expenses/[expenseId]/edit/page.tsx b/src/app/groups/[groupId]/expenses/[expenseId]/edit/page.tsx deleted file mode 100644 index 188d08f..0000000 --- a/src/app/groups/[groupId]/expenses/[expenseId]/edit/page.tsx +++ /dev/null @@ -1,42 +0,0 @@ -import { ExpenseForm } from '@/components/expense-form' -import { deleteExpense, getExpense, getGroup, updateExpense } from '@/lib/api' -import { expenseFormSchema } from '@/lib/schemas' -import { Metadata } from 'next' -import { notFound, redirect } from 'next/navigation' - -export const metadata: Metadata = { - title: 'Edit expense', -} - -export default async function EditExpensePage({ - params: { groupId, expenseId }, -}: { - params: { groupId: string; expenseId: string } -}) { - const group = await getGroup(groupId) - if (!group) notFound() - const expense = await getExpense(groupId, expenseId) - if (!expense) notFound() - - async function updateExpenseAction(values: unknown) { - 'use server' - const expenseFormValues = expenseFormSchema.parse(values) - await updateExpense(groupId, expenseId, expenseFormValues) - redirect(`/groups/${groupId}`) - } - - async function deleteExpenseAction() { - 'use server' - await deleteExpense(expenseId) - redirect(`/groups/${groupId}`) - } - - return ( - <ExpenseForm - group={group} - expense={expense} - onSubmit={updateExpenseAction} - onDelete={deleteExpenseAction} - /> - ) -} |
